_MI_HARDWARE_STATE

//0x180 bytes (sizeof) struct _MI_HARDWARE_STATE { ULONG NodeMask; //0x0 ULONG NumaHintIndex; //0x4 ULONG NumaLastRangeIndexInclusive; //0x8 UCHAR NumaTableCaptured; //0xc UCHAR NodeShift; //0xd UCHAR ChannelShift; //0xe struct _MI_NODE_NUMBER_ZERO_BASED* NodeGraph; //0x10 struct _MI_SYSTEM_NODE_INFORMATION* SystemNodeInformation; //0x14 struct _HAL_NODE_RANGE TemporaryNumaRanges[2]; //0x18 struct _HAL_NODE_RANGE* NumaMemoryRanges; //0x28 struct _HAL_CHANNEL_MEMORY_RANGES* ChannelMemoryRanges; //0x2c volatile LONG NumaNodeLock; //0x30 ULONG SecondLevelCacheSize; //0x34 ULONG FirstLevelCacheSize; //0x38 ULONG PhysicalAddressBits; //0x3c UCHAR ProcessorCachesFlushedOnPowerLoss; //0x40 ULONG TotalPagesAllowed; //0x44 ULONG SecondaryColorMask; //0x48 ULONG SecondaryColors; //0x4c ULONG FlushTbForAttributeChange; //0x50 ULONG FlushCacheForAttributeChange; //0x54 ULONG FlushCacheForPageAttributeChange; //0x58 ULONG CacheFlushPromoteThreshold; //0x5c ULONGLONG InvalidPteMask; //0x80 ULONG LargePageColors[2]; //0xc0 ULONG FlushTbThreshold; //0xc8 enum _MI_PFN_CACHE_ATTRIBUTE OptimalZeroingAttribute[4][4]; //0xcc UCHAR AttributeChangeRequiresReZero; //0x10c struct _MI_ZERO_COST_COUNTS ZeroCostCounts[2]; //0x110 ULONG HighestPossiblePhysicalPage; //0x130 ULONG VsmKernelPageCount; //0x134 struct _RTL_AVL_TREE EnclaveRegions; //0x138 VOID* EnclaveMetadataPage; //0x13c struct _RTL_BITMAP* EnclaveMetadataBitMap; //0x140 struct _EX_PUSH_LOCK EnclaveMetadataEntryLock; //0x144 volatile LONG EnclaveMetadataPageLock; //0x148 };